//  Copyright (c) 2011 M.A. (Thijs) van den Berg, http://sitmo.com/
//
//  Use, modification and distribution are subject to the MIT Software License. 
// (See accompanying file LICENSE.txt or copy at http://www.bmlib.org/LICENSE.txt)

#ifndef GBMLIB_AT_FIXED_TIME
#define GBMLIB_AT_FIXED_TIME

#include <cmath>
#include <bmlib/gbm_process.hpp>

namespace bmlib{ 

template <class ProcessType>
class at_fixed_time
{
public:
    typedef ProcessType process_type;
    typedef typename ProcessType::value_type value_type;
    
    at_fixed_time(ProcessType& proc, value_type t)
        : m_process(proc), m_t(t)
    {
        // todo: check parameters
    }
    
    ProcessType process() const
    {
        return m_process;
    }

    value_type t() const
    {
        return m_t;
    }
public:
    ProcessType  m_process;
    value_type m_t;
};

} // namespaces gbmlib
#endif